package ua.diploma.front;

import java.util.Date;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

import org.apache.log4j.Logger;

/**
 * Слушатель жизненного цикла чата
 * 
 * @author netstalk3r
 * 
 */
@WebListener
public class LifeCycleListener implements ServletContextListener {

	/**
	 * логгер
	 */
	private static final Logger logger = Logger
			.getLogger(LifeCycleListener.class);

	/**
	 * конструктор по умолчанию
	 */
	public LifeCycleListener() {
		super();
	}

	/**
	 * обработка запуска приложения
	 */
	public void contextInitialized(ServletContextEvent arg0) {
		logger.info("=====> Чат стартовал: " + new Date().toString());
		logger.info("Инициализация hibernate сессии");
		try {
			Class.forName("ua.diploma.hibernate.util.HibernateUtil");
		} catch (ClassNotFoundException ex) {
			logger.info("Инициализация hibernate сессии не удалась");
			throw new RuntimeException(ex);
		}
	}

	/**
	 * обработка завершения приложения
	 */
	public void contextDestroyed(ServletContextEvent arg0) {
		logger.info("=====> Чат остановлен: " + new Date().toString());
	}

}
